package tt.dz.egobus.servicemanager.business.distance;

import tt.dz.egobus.servicemanager.bean.DefaultSPIServiceLoader;
import tt.dz.egobus.servicemanager.bean.SPIAbstractIdAlgorithmFactory;
import tt.dz.egobus.servicemanager.bean.SPIServiceLoader;
import tt.dz.egobus.servicemanager.core.factory.IdFactory;

/**
 * @author Anson
 * @date 17-3-29
 * @name
 * @since 1.0.3
 */
public class SPITransferPointValidationFactory
        extends SPIAbstractIdAlgorithmFactory<TransferPointValidation>
        implements IdFactory<TransferPointValidation> {

    private final SPIServiceLoader loader = new DefaultSPIServiceLoader();

    @Override
    public TransferPointValidation factory(String id) {
        return this.getNew(id);
    }

    @Override
    protected SPIServiceLoader getSFIServiceLoader() {
        return loader;
    }

    @Override
    protected Class<TransferPointValidation> getCurInterfaceClass() {
        return TransferPointValidation.class;
    }
}
